SView Designer Control为OCX控件提供三维模型基本的浏览、模型属性操作、基本三维对象操作、动画播放等功能的实现接口,可实现基本的 三维模型展示功能,以便于用户个性化定制属于自己的产品。文档主要介绍了OCX控件提供的接口说明。SView Designer Control控件集成说明的介绍请查看SView Designer Control 集成说明文档
类型 接口 描述 备注
方法 VARIANT_BOOL Open(BSTR filePath) 打开模型(与Show可以一起使用)
方法 void Close(VARIANT_BOOL bSaveFile) 关闭模型文件
方法 VARIANT_BOOL Save(BSTR filePath, BOOL bDistribution) 保存模型文件
方法 void SelectModels(BSTR objID, VARIANT_BOOL bDeslectAll) 设置选择的模型 注:模型实例路径用";"隔离,可以选择多个
方法 BSTR GetSelectedModels() 获取选择的模型。返回选择模型ID数组 (如:PATH|0|3,ELBOW_FIT;PATH|0|4,CLAMP)
方法 void SetModelVisibility(BSTR plcPath,VARIANT_BOOL bshow) 根据模型实例ID,显隐模型
方法 void SetModelColor(LONG objColor, BSTR plcPath) 设置模型颜色
方法 void SetModelColorByName(LONG objColor,BSTR objName) 根据名称设置模型的颜色
方法 BSTR GetModelViews(void) 获取视图列表
方法 void SetModelViewByID(LONG viewID) 根据视图ID设置当前视图
方法 LONG GetCurrentModelView(void) 获取当前视图ID
方法 void ShowDefaultView() 显示默认视图
方法 BSTR AddModel(BSTR strFilePath, BSTR strParentPlcID) 添加模型接口
方法 void DeleteModelbyId(BSTR ids) 删除模型接口。 模型ID,多个中间用 ";"分割
方法 VARIANT_BOOL RefreshWindow() 刷新视口
方法 BSTR ModelGetProperty(BSTR plcPath, BSTR propertyName) 根据属性名称获取指定零件的属性值
方法 VARIANT_BOOL AddProperty(BSTR plcPath,BSTR PropertyName,BSTR PropertyValue) 添加属性,包括属性名和属性值
方法 VARIANT_BOOL EditProperty(BSTR plcPath,BSTR PropertyName,BSTR PropertyValue) 编辑属性,改变该属性名下的属性值
方法 VARIANT_BOOL CreateSnap(LPCTSTR fileName,LPCTSTR fileType,VARIANT_BOOL bFileCover,LONG width LONG height) 生成快照
方法 VARIANT_BOOL CustomScreenShot() 自定义截图
方法 VARIANT_BOOL BomToJson(BSTR filePath) 导出BOM装配结构到指定路径
方法 void AboutBox() 显示关于对话框
方法 void ShowBox(VARIANT_BOOL bShow) 设置是否显示选中模型的包围盒标志
事件 OnModelSelectedChanged(BSTR svlPath, VARIANT_BOOL isSelected) 选中模型时触发
事件 void OnMouseEven(int mouseKey) 按下鼠标时触发 只实现了双击事件
事件 void OnFileLoadEndEvent(BSTR fileLoadInfo) 打开文件后触发
属性 BSTR Src 数据源(文件名),通过该属性,可以对SVL文件所在路径进行设定
属性 VARIANT_BOOL ShowToolBar 是否显示工具栏
属性 VARIANT_BOOL ShowAssemblyPanel 是否显示装配面板
属性 SHORT DisplayMode 显示模式属性:0-着色 1--边着色;2--线框;3--网格 5-半透明;
属性 VARIANT_BOOL ShowViewPanel 是否显示视图面板 默认值:false true--显示 false--不显示
方法 void PlayStep(LONG playMode, VARIANT_BOOL bReverse) 播放动画
方法 BSTR AnimationCreateStep() 创建新的步骤
方法 void AnimationDeleteStep(BSTR stepID) 删除指定步骤ID的动画 步骤ID(由过程ID和步骤ID组成),如:0|1(0代表过程ID,1代表步骤ID)
方法 void AnimationSetCurStep(BSTR stepID) 设置成当前活动的步骤 步骤ID(由过程ID和步骤ID组成),如:0|1(0代表过程ID,1代表步骤ID)
方法 void AnimationUpdateCurStep(void) 更新当前步骤
方法 BSTR GetSelectPMI() 获取选择的PMI 选择的PMI ID集合 中间用";"号分割。 多行文本用"\r\n"分割
方法 void SelectPMI(BSTR ids, VARIANT_BOOL bDeselectAll) 选择PMI 选择的PMI ID集合 中间用";"号分割 多行文本用"\r\n"分割
方法 void SetPMIsVisibity(BSTR ids, VARIANT_BOOL bShow) 设置PMI显隐状态 ID集合,中间用";"号分割 bShow 显隐状态
方法 void ShowHideAllPMI(bool bShow) 显示隐藏所有的PMI
方法 BSTR GetPMIInfo(BSTR propertyName) 根据PMI类型名称获取该类型所有PMI 参数:
[in]propertyName PMI属性名称 "COMPONENT_SN"代表零件序号PMI名称;"TORQUE"代表扭矩PMI名称;"GAP"表示间隙;""获取所有PMI信息

返回值:
总装下所有该类型的PMI,格式为"配置路径1:PMI名称;配置路径2:PMI名称2" 当输入为"",获取所有PMI信息,格式为id:内容,显隐状态;id:内容,显隐状态 多行文本用"\r\n"分割
方法 VARIANT_BOOL CreateComponentNote() 创建零组件标注
方法 VARIANT_BOOL CreateComponentSNNote() 创建零组件序号标注
方法 BSTR GetPMIStateById(BSTR PMIId) 根据ID获取PMI显隐状态 PMI ID集合 中间用";"号分割。
返回值形式为 id,true;id,false;
事件 void OnCreateCompNameBeginEvent() 创建零组件标注前事件
事件 void OnCreateSerialNumberBeginEvent() 创建零组件序号标注前事件
事件 void OnPMISelectedChanged(INT iPMIId) 选中PMI时触发
方法 void SetUser(BSTR userName, BSTR departmentName, BSTR roleName) 设置用户信息
方法 BSTR GetUser(void) 获取用户信息  
方法 void CreateNote() 新建批注  
方法 void EditNote() 编辑选中的批注  
方法 BSTR GetSelectedUserNotes() 获取选中的批注信息  
方法 void SelectUserNotes(BSTR userNoteIds) 选中批注  
方法 VARIANT_BOOL DeleteNote(BSTR noteIds) 删除批注  
打开本地文件
方法
void Open(BSTR fileName)
说明
打开本地文件
参数
参数 是否必须 说明
fileName 本地文件路径。
返回值
TRUE-成功
FALSE-失败
备注
D:\\1.svl 打开D盘下的1.svl文件
关闭模型文件
方法
void Close(VARIANT_BOOL bSaveFile)
说明
关闭模型文件
参数
参数 是否必须 说明
bSaveFile 是否保存文件
返回值
备注
保存模型
方法
VARIANT_BOOL Save(BSTR filePath, BOOL bDistribution)
说明
将当前模型保存到指定目录
参数
参数 是否必须 说明
filePath 文件保存路径
bDistribution 是否分散存储
返回值
TRUE-成功
FALSE-失败
备注
选择模型
方法
void SelectModels(BSTR objID, VARIANT_BOOL bDeslectAll)
说明
设置选择的模型
参数
参数 是否必须 说明
objid 输入参数,模型实例ID (如:PATH|0|2;PATH|0|5 多个用分号隔开)
bDeslectAll 是否取消已有选择
返回值
void
备注
获取选择的模型
方法
BSTR GetSelectedModels()
说明
获取选择的模型
参数
返回值
选择模型ID数组(如:PATH|0|3,ELBOW_FIT;PATH|0|4,CLAMP)
备注
显隐模型
方法
void SetModelVisibility(BSTR plcPath,VARIANT_BOOL bshow)
说明
根据模型实例ID,显隐模型
参数
参数 是否必须 说明
plcPath 模型实例路径(多个用逗号隔开,如PATH|0|1,PATH|0|3)
bshow 显示/隐藏状态
返回值
void
备注
设置模型颜色
方法
void SetModelColor(LONG objColor, BSTR plcPath)
说明
设置模型颜色
参数
参数 是否必须 说明
objColor 要改变的颜色
svlPath 对象ID(如:PATH|0|1)
返回值
void
备注
根据名称设置模型的颜色
方法
void SetModelColorByName(LONG objColor,BSTR objName)
说明
根据名称设置模型的颜色
参数
参数 是否必须 说明
objColor 设置的颜色值
objName 模型名称(多个用分号隔开)
返回值
void
备注
获取视图列表
方法
BSTR GetModelViews(void)
说明
获取视图列表
参数
返回值
回视图ID和名称组合字符串;格式如下:ID,名称;ID,名称。
备注
根据视图ID设置当前视图
方法
void SetModelViewByID(LONG viewID)
说明
根据视图ID设置当前视图
参数
参数 是否必须 说明
viewID 视图ID
返回值
void
备注
获取当前视图ID
方法
LONG GetCurrentModelView(void)
说明
获取当前视图ID。
参数
返回值
当前视图ID
备注
显示默认视图
方法
void ShowDefaultView()
说明
显示默认视图
参数
返回值
void
备注
添加模型
方法
BSTR AddModel(BSTR strFilePath, BSTR strParentPlcID)
说明
添加模型接口
参数
参数 是否必须 说明
strFilePath 插入的模型文件路径
strParentPlcID 父对象配置路径,如:PATH|0|3
返回值
新增模型路径
备注
删除模型
方法
void DeleteModelById(BSTR ids)
说明
删除模型
参数
参数 是否必须 说明
ids 模型ID,多个中间用 ";"分割(如:PATH|0|2;PATH|0|5)
返回值
备注
刷新视口
方法
VARIANT_BOOL RefreshWindow()
说明
刷新视口
参数
返回值
TRUE-成功
FASLE-失败
备注
根据属性名称获取指定零件的属性值
方法
BSTR ModelGetProperty(BSTR plcPath, BSTR propertyName)
说明
根据属性名称获取指定零件的属性值
参数
参数 是否必须 说明
plcPath 零组件配置路径(如:PATH|0|2)
PropertyName 属性名称
返回值
属性值
备注
添加属性
方法
VARIANT_BOOL AddProperty(BSTR plcPath,BSTR PropertyName,BSTR PropertyValue)
说明
添加属性
参数
参数 是否必须 说明
plcPath 零组件配置路径。
PropertyName 属性名称
PropertyValue 属性值
返回值
TRUE-成功
FASLE-失败
备注
编辑属性
方法
VARIANT_BOOL EditProperty(BSTR plcPath,BSTR PropertyName,BSTR PropertyValue)
说明
编辑属性,改变该属性名下的属性值
参数
参数 是否必须 说明
plcPath 零组件配置路径
PropertyName 属性名称
PropertyValue 属性值
返回值
TRUE-成功
FASLE-失败
备注
方法
VARIANT_BOOL CreateSnap(BSTR filePath, BSTR fileType, VARIANT_BOOL bCover, LONG width, LONG height)
说明
生成快照
参数
参数 是否必须 说明
filePath 快照路径
fileType 文件格式类型
bCover 是否覆盖
width 快照宽度
height 快照高度
返回值
TRUE-成功
FASLE-失败
备注
自定义截图
方法
VARIANT_BOOL CustomScreenShot()
说明
自定义截图
参数
返回值
TRUE-成功
FASLE-失败
备注
导出BOM装配结构到指定路径
方法
VARIANT_BOOL BomToJson(BSTR filePath)
说明
导出BOM装配结构到指定路径
参数
参数 是否必须 说明
filePath BOM文件保存路径
返回值
TRUE-成功
FASLE-失败
备注
显示关于对话框
方法
void AboutBox()
说明
显示关于对话框
参数
返回值
void
备注
设置是否显示选中模型的包围盒标志
方法
void ShowBox(VARIANT_BOOL bShow)
说明
设置是否显示选中模型的包围盒标志
参数
参数 是否必须 说明
bShow 显示/隐藏标志
返回值
void
备注
选中模型事件
事件
OnModelSelectedChanged(BSTR svlPath, VARIANT_BOOL isSelected)
说明
选中模型事件
参数
参数 是否必须 说明
svlPath 拾取零件的配置路径
isSelected 拾取或取消拾取
返回值
void
备注
鼠标事件
事件
void OnMouseEven(int mouseKey)
说明
鼠标事件
参数
参数 是否必须 说明
mouseKey 1-单击左键
2-单击右键
3-双击左键
4-双击右键
返回值
void
备注
按下鼠标时触发,只实现了双击事件
打开文件后触发事件
事件
void OnFileLoadEndEvent(BSTR fileLoadInfo)
说明
打开文件后触发事件
参数
参数 是否必须 说明
fileLoadInfo svlx文件路径
返回值
void
备注
播放动画
方法
void PlayStep(LONG playMode, VARIANT_BOOL bReverse)
说明
播放动画
参数
参数 是否必须 说明
playMode 0-无 1-播放当前步骤 2-从当前步骤开始播放 3-播放当前过程 4-从当前过程开始播放 5-播放全部动画 6-随机播放动画
bReverse 是否为倒播
返回值
void
备注
创建新的步骤
方法
BSTR AnimationCreateStep()
说明
创建新的步骤
参数
返回值
步骤ID,如:0|1(0代表过程ID,1代表步骤ID)
备注
删除指定步骤ID的动画
方法
void AnimationDeleteStep(BSTR stepID)
说明
删除指定步骤ID的动画
参数
参数 是否必须 说明
stepID 由过程ID和步骤ID组成,如:0|1(0代表过程ID,1代表步骤ID)
返回值
void
备注
设置成当前活动的步骤
方法
void AnimationSetCurStep(BSTR stepID)
说明
设置成当前活动的步骤
参数
参数 是否必须 说明
stepID 由过程ID和步骤ID组成,如:0|1(0代表过程ID,1代表步骤ID)
返回值
void
备注
更新当前步骤
方法
void AnimationUpdateCurStep(void)
说明
更新当前步骤
参数
返回值
void
备注
获取选择的PMI
方法
BSTR GetSelectPMI()
说明
获取选择的PMI
参数
返回值
选择的PMI ID集合中间用";"号分割。多行文本用"\r\n"分割
备注
选择PMI
方法
void SelectPMI(BSTR ids, VARIANT_BOOL bDeselectAll)
说明
选择PMI
参数
参数 是否必须 说明
ids 选择的PMI ID集合。多个PMI中间用";"号分割,多行文本用"\r\n"分割
bDeselectAll 拾取前是否取消选中
返回值
void
备注
设置PMI显隐状态
方法
void SetPMIsVisibity(BSTR ids, VARIANT_BOOL bShow)
说明
设置PMI显隐状态
参数
参数 是否必须 说明
ids 选择的PMI ID集合。多个PMI中间用";"号分割,多行文本用"\r\n"分割
bShow 显隐状态
返回值
void
备注
显示隐藏所有的PMI
方法
void ShowHideAllPMI(bool bShow)
说明
显示隐藏所有的PMI
参数
参数 是否必须 说明
bShow 显示隐藏所有的PMI
返回值
void
备注
根据PMI类型名称获取该类型所有PMI
方法
BSTR GetPMIInfo(BSTR propertyName)
说明
根据PMI类型名称获取该类型所有PMI
参数
参数 是否必须 说明
propertyName PMI类型名称 "COMPONENT_SN"代表零件序号PMI名称;"TORQUE"代表扭矩PMI名称;"GAP"表示间隙;""获取所有PMI信息
返回值
总装下所有该类型的PMI,格式为"配置路径1:PMI名称;配置路径2:PMI名称2"。
当输入为"",获取所有PMI信息,格式为"id:内容,显隐状态;id:内容,显隐状态"。多行文本用"\r\n"分割
备注
目前,只支持“COMPONENT_SN”类型和“”
创建零组件标注
方法
VARIANT_BOOL CreateComponentNote()
说明
创建零组件标注
参数
返回值
TRUE-成功
FASLE-失败
备注
创建零组件序号标注
方法
VARIANT_BOOL CreateComponentSNNote()
说明
创建零组件序号标注
参数
返回值
TRUE-成功
FASLE-失败
备注
根据ID获取PMI显隐状态
方法
BSTR GetPMIStateById(BSTR PMIId)
说明
根据ID获取PMI显隐状态
参数
参数 是否必须 说明
PMIId PMI ID集合。中间用";"号分割。
返回值
PMI的显示隐藏状态,格式为"PMIID1,显示隐藏状态1;PMIID2,显示隐藏状态2",例如:"id,true;id,false;"
备注
创建零组件标注前事件
事件
void OnCreateCompNameBeginEvent()
说明
创建零组件标注前事件,在执行创建零组件标注时,创建标注前触发
参数
返回值
备注
1)在执行工具栏命令"零组件标注"时响应
2)接收事件后,若需后续处理,请调用接口CreateComponentNote。
创建零组件序号标注前事件
事件
void OnCreateSerialNumberBeginEvent()
说明
创建零组件序号标注前事件,在执行创建零组件序号标注时,创建序号前触发
参数
返回值
备注
1)在执行工具栏命令"序号标注-零组件"时响应
2)接收事件后,若需后续处理,请调用接口CreateComponentSNNote。
选中PMI事件
事件
void OnPMISelectedChanged(INT iPMIId)
说明
选中PMI时触发
参数
参数 是否必须 说明
iPMIId pmi ID
返回值
备注
1)在选择PMI时响应的事件处理
2)接收事件后,若需后续处理,请调用接口OnSelectPMIEvent。
设置用户信息
方法
void SetUser(BSTR userName, BSTR departmentName, BSTR roleName)
说明
设置当前选中批注的用户信息
参数
参数 是否必须 说明
userName 用户名称
departmenterName 部门名称
roleName 角色名称
返回值
void
备注
获取用户信息
方法
BSTR GetUser(void)
说明
获取当前选中批注的用户信息
参数
返回值
用户名;部门名称;开发
备注
新建批注
方法
void CreateNote()
说明
新建批注
参数
返回值
void
备注
编辑选中的批注
方法
void EditNote()
说明
编辑选中的批注
参数
返回值
void
备注
获取选中的批注信息
方法
BSTR GetSelectedUserNotes()
说明
获取选中的批注信息
参数
返回值
选中的批注列表字符串。格式(ID1:批注信息1;ID2:批注信息2)。选择多个用分号隔开,如:34:2|ssswasdsdsaxc;18:2|dsafsaf
备注
选中批注
方法
void SelectUserNotes(BSTR userNoteIds)
说明
选中批注
参数
参数 是否必须 说明
userNoteIds 批注ID,多个用';'间隔
返回值
void
备注
删除批注
方法
VARIANT_BOOL DeleteNote(BSTR noteIds)
说明
删除批注
参数
参数 是否必须 说明
bstrID 批注ID,多个用';'间隔
成功与否
void
备注